import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import UnoCSS from 'unocss/vite'
import path from 'path'
import { createHtmlPlugin } from 'vite-plugin-html';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { VantResolver } from '@vant/auto-import-resolver';

const resolve = (dir) => path.resolve(__dirname, dir)
console.log(import.meta.env)
export default defineConfig(async ({ mode }) => {
  return {
    plugins: [
      vue(),
      UnoCSS(),
      // 默认会向 index.html 注入 .env 文件的内容，类似 vite 的 loadEnv函数
      // 还可配置entry入口文件， inject自定义注入数据等
      createHtmlPlugin(),
      AutoImport({
        resolvers: [VantResolver()],
      }),
      Components({
        resolvers: [VantResolver()],
      }),
    ],
    build: {
      // 指定打包路径，默认为项目根目录下的 dist 目录
      outDir: 'dist',
      sourcemap: false,
      minify: 'terser',
      cssCodeSplit: false,
      terserOptions: {
        compress: {
          drop_console: mode === 'production',
          drop_debugger: mode === 'production'
        }
      },
      chunkSizeWarningLimit: 1500, // chunk 大小警告的限制（以 kbs 为单位）
    },
    resolve: {
      alias: {
        '@': resolve('src')
      }
    }
  }
})
